package com.leador.listener;


import com.leador.module.response.Result;
import com.leador.module.response.fence.AlarmResult;
import com.leador.module.response.fence.HisAlarmResult;
import com.leador.module.response.fence.FenceCreateResult;
import com.leador.module.response.fence.FenceResult;

/**
 * 地理围栏回调接口
 */
public abstract class OnGeoFenceListener {
  /**
   * 创建圆形围栏回调接口
   * @param result
   */
  public void onCreateCircularFenceCallback(FenceCreateResult result) {}

  /**
   * 创建多边形围栏回调接口
   * @param result
     */
  public void onCreateVertexesFenceCallback(FenceCreateResult result) {}

  /**
   * 更新围栏回调接口
   * @param result
     */
  public void onUpdateFenceCallback(Result result) {}


  /**
   * 删除围栏回调接口
   * @param result
     */
  public void onDeleteFenceCallback(Result result) {}

  /**
   * 查询围栏列表回调接口
   * @param fenceResult
     */
  public void onQueryFenceListCallback(FenceResult fenceResult) {}

  /**
   * 查询监控对象状态回调接口
   * @param result
     */
  public void onQueryMonitoredStatusCallback(AlarmResult result) {}

  /**
   * 查询围栏历史报警信息回调接口
   * @param alarmsResult
     */
  public void onQueryHistoryAlarmCallback(HisAlarmResult alarmsResult) {}

//  /**
//   * 延迟报警回调接口
//   * @param paramString
//     */
//  public void onDelayAlarmCallback(String paramString) {}

  /**
   * 请求失败回调接口
   * @param
     */
  public abstract void onRequestFailedCallback(Result result);
}
